package com.jmb.api.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * 
 * @TableName t_interface_case_suite
 */
@TableName(value ="t_interface_case_suite")
@Data
public class InterfaceCaseSuite  extends BaseEntity{


    /**
     * 测试套件名称
     */
    @Schema(description = "测试套件名称")
    @NotEmpty(message = "名称不允许为空")
    @TableField(value = "suite_name")
    private String suiteName;

    /**
     * 测试套件描述
     */
    @Schema(description = "测试套件描述")
    @TableField(value = "description")
    private String description;


    /**
     * 创建人
     */
    @Schema(description = "创建人")
    @TableField(value = "creator")
    private String creator;

    /**
     * 执行方式 0并行1串行
     */
    @Schema(description = "执行方式 0并行1串行")
    @NotNull(message = "执行方式不允许为空")
    @TableField(value = "execute_type")
    private Integer executeType;

    /**
     * 0:dev 1:test 2:stg 3:prod 4:debug
     */
    @Schema(description = "运行环境 0:dev 1:test 2:stg 3:prod 4:debug")
    @NotNull(message = "运行环境不允许为空")
    @Max(value = 4, message = "运行环境设置错误")
    @Min(value = 0, message = "运行环境设置错误")
    @TableField(value = "run_dev")
    private Integer runDev;

    /**
     * 是否失败重新 0是1否
     */
    @Schema(description = "是否失败重新 0是1否")
    @TableField(value = "is_retry")
    @NotNull(message = "失败重试不能为空")
    @Max(value = 1, message = "失败重试设置错误")
    @Min(value = 0, message = "失败重试设置错误")
    private Integer isRetry;
}